RapidSpell can use two types of dictionary formats, 'Dict' files and 'MDict' assemblies. The RapidSpellMDict.dll assembly dictionaries are a convenient and simple format, whereas the 'Dict' files provide more advanced features, such as customization and runtime switching. Consult the 'DLL Main Dictionaries' and 'Dict File Main Dictionaries' sections below for more details.

Included are 3 dictionary assemblies, UK and US English dictionaries, each containing ~110K words, a combined UK and US dictionary containing ~115K words. Other English dictionaries are available on request, these include; 70K word US and UK, 150K word combined US+UK, 110K word Australian and Canadian. Please email support@keyoti.com

Keyoti offer a number of non-English dictionaries. Further details and evaluation versions are available at;

https://keyoti.com/products/rapidspell/dotNetWeb/dictionaries.html

User (Custom) Dictionaries / Add Button

To offer an "Add" function to the user, specify the UserDictionaryFile property in either spell checking control. If the file path specified is valid, the Add option will be enabled. If the file does not exist (but the path is valid) then the file will be created. The user dictionary is a simple UTF-8 text file with words listed one per line. The user dictionary is suited best to relatively short lists added to by the user. If a large list of custom words needs to be added, it is suggested that they are added to the main dictionary using Dict Manager.

Dict File Main Dictionaries

RapidSpell has it's own proprietary dictionary format, these dictionaries are called Dict files. They have been developed to allow more flexibility than the default dictionary format. The default Keyoti.RapidSpellMDict.DLL format will continue to be supported, the advantages and disadvantages of the formats are outlined below:

Dict File;

Advantages
- Smaller file size
- Swappable during run-time (necessary for other languages)
- Cached in memory
- Customizable by developer

Disadvantages
- Developer must specify valid file path

Keyoti.RapidSpellMDict.DLL;

Advantages
- Cacheable in GAC - Cached in memory

Disadvantages
- Not runtime swappable
- Not customizable

If it is desirable to cache the dictionary in the GAC then the Keyoti.RapidSpellMDict.DLL format should be used, however for all other uses the new Dict File format is preferable.

Using Dict Files

The older MDict.DLL type file must reside in the same directory as the main RapidSpell DLL, but it will only be used if a .dict file is not loaded.
Javascript based usage

To specify a DictFile to use, in the page where the spell checker is used add a call (as the page is initialized) like:

rapidSpell.setParameterValue('default', 'DictFile', '~/pathToDict.dict');

Where '~/pathToDict.dict' is a URL relative to the root of the application (~ means the root).

Control based usage

To use a .dict file simply set the DictFile property (of the RapidSpellWebLauncher/RapidSpellWInline controls) to the file path of the Dict file to be used on the server.

Dictionary Customization

It is possible to customize the dictionaries and create new ones using the convenient Dict Manager tool included in RapidSpell Web, please load the tool and consult the help system provided in it for more details.

Typically Dict Files can be found under the 'dictionaries' folder in RapidSpell Web install folder (under 'program files (x86)'). Make a copy of the .dict file to be used, and open the copy in Dict Manager. Then words can be added/removed and lists can be merged from other .dict files and text files.


The Dict Manager tool included in RapidSpell Web

Programmatic Use Of Dict Manager
To use Dict Manager programmatically:

DLL Main Dictionaries

If a .dict file is not specified as above, then the Keyoti.RapidSpellMDict.DLL is used as the main dictionary. Care must be taken as to which language will actually be loaded by the .NET runtime. If this DLL is loaded into the GAC then that version will be used and override any specific dictionary DLLs referenced in the project. Therefore it is essential that care be taken so that the desired Keyoti.RapidSpellMDict.DLL be used in the project.

Avoiding Redundant Space Usage

The Keyoti.RapidSpellMDict.DLL file must be referenced by your project, even if you are using a .Dict File based dictionary. Therefore, in order to save space you may prefer to download an 'empty' DLL dictionary, which will satisfy the reference requirement, and take up zero kilobytes;

https://keyoti.com/downloads/Empty-DT-Keyoti.RapidSpellMDictv3.zip